package com.yunxi.sys.service;

import com.github.pagehelper.PageInfo;
import com.yunxi.sys.pojo.OrgListVO;
import com.yunxi.sys.pojo.OrgVO;
import java.lang.reflect.InvocationTargetException;
import java.util.List;

/**
 * <p>
 * 组织结构 服务类
 * </p>
 *
 * @author caoYong
 * @since 2019-05-08
 */
public interface OrgDubboService {

    OrgVO getById(String id) throws InvocationTargetException, IllegalAccessException;

    void saveOrUpdate(OrgVO orgVo) throws InvocationTargetException, IllegalAccessException;

    void removeById(String id);

    public Object findTreeListBySysType(String org_type) throws NoSuchMethodException, IllegalAccessException, InvocationTargetException;

    public Object treeByPid(String pid) throws NoSuchMethodException, IllegalAccessException, InvocationTargetException;

    PageInfo<OrgVO> findPageByVO(OrgVO orgVO, Integer pageNum, Integer pageSize) throws InvocationTargetException, IllegalAccessException;

    Object getList();

    List<OrgListVO> getOrgList();

    void removeByListVO(List<OrgVO> orgVoList) throws IllegalAccessException, InvocationTargetException, InstantiationException;

    List<OrgVO> listByVO(OrgVO orgVO);
}
